home *** CD-ROM | disk | FTP | other *** search
/ Aminet 37 / Aminet 37 (2000)(Schatztruhe)[!][Jun 2000].iso / Aminet / dev / lang / sofa.lha / sofa / smalleiffel / man / SmallEiffelFAQ.txt < prev    next >
Text File  |  2000-03-25  |  16KB  |  305 lines

  1.  
  2.                          Frequently Asked Questions
  3.                                       
  4.    Table of contents
  5.    
  6.    Q01: [1]Why the name SmallEiffel The GNU Eiffel Compiler?
  7.    Q02: [2]What's the matter with version numbering?
  8.    Q03: [3]Is it possible to have the complete Eiffel source code of
  9.    SmallEiffel?
  10.    Q04: [4]Is it possible to use SmallEiffel for large/commercial
  11.    applications?
  12.    Q05: [5]Is it possible to do incremental compilation with
  13.    SmallEiffel?
  14.    Q06: [6]Is there a SmallEiffel mailing list?
  15.    Q07: [7]What about the Guru section?
  16.    Q08: [8]Is it difficult to switch from ISE to SmallEiffel?
  17.    Q09: [9]Are there mirror FTP sites for SmallEiffel?
  18.    Q10: [10]Is it possible to use the Boehm-Demers-Weiser garbage
  19.    collector with SmallEiffel?
  20.    Q11: [11]Why don't you post more messages in newsgroups and/or mailing
  21.    lists?
  22.    Q12: [12]It is possible to create applets with compile_to_jvm?
  23.    Q13: [13]Where do I send bug reports?
  24.    Q14: [14]Is there a mechanism to precompile libraries?
  25.    Q15: [15]How is SmallEiffel compiled?
  26.    Q16: [16]How do I keep informed about SmallEiffel?
  27.    Q17:
  28.      [17]What documentation is provided with SmallEiffel?
  29.    Where can I find Eiffel documentation?
  30.    Q18: [18]Does SmallEiffel compile the whole Eiffel language ?
  31.    Q19: [19]How can I help ?
  32.    Q20: [20]Why don't you change this and add that?! It would be much
  33.    better/cooler/whatever !
  34.    
  35.    Questions and answers
  36.    
  37.    Q01: Why the name SmallEiffel The GNU Eiffel Compiler?
  38.    A01: SmallEiffel comes from the mixing of the names Smalltalk and
  39.    Eiffel. Our aim is to offer an Eiffel development environment as easy
  40.    to use as Smalltalk and as safe as Eiffel. Since version -0.82,
  41.    SmallEiffel has been promoted by the Free Software Foundation the
  42.    official GNU Eiffel Compiler.
  43.    
  44.    Q02: What's the matter with version numbering?
  45.    A02: Version numbering uses negative numbers. The first distributed
  46.    version was numbered -0.99, the second one -0.98, the third -0.97, and
  47.    so on. Version number -0.0 should correspond to the very best Eiffel
  48.    compiler on this planet :-)
  49.    
  50.    Q03: Is it possible to have the complete Eiffel source code of
  51.    SmallEiffel?
  52.    A03: Since it is the GNU Eiffel Compiler, the complete source code of
  53.    SmallEiffel is of course in the distribution. The source code for
  54.    additional libraries is also provided.
  55.    
  56.    Q04: Is it possible to use SmallEiffel for large/commercial
  57.    applications?
  58.    A04: It is very possible to use SmallEiffel for a large application.
  59.    An Eiffel compiler is a really big project and SmallEiffel itself is
  60.    fully written in Eiffel. SmallEiffel is completely free and any
  61.    private compagny can use SmallEiffel freely, and distribute freely the
  62.    products made with it. They do not have to pay royalties. However,
  63.    SmallEiffel doesn't come with any warranty (please read the COPYING
  64.    file in the distribution). For extended support as well as consulting,
  65.    see [21]here.
  66.    
  67.    Q05: Is it possible to do incremental compilation with SmallEiffel?
  68.    A05: Before release -0.91 the answer was no. The answer is now YES.
  69.    Because of the SmallEiffel type inference mechanism, SmallEiffel
  70.    always produces all needed C files from scratch. As old C files are
  71.    automatically saved, only modified C files are recompiled. See
  72.    [22]man/compile for details.
  73.    
  74.    Q06: Is there a SmallEiffel mailing list?
  75.    A06: Yes! SmallEiffel users and developpers can share their
  76.    experiences and ideas by subscribing to the [23]SmallEiffel official
  77.    mailing list.
  78.    
  79.    Q07: What about the Guru section?
  80.    A07: Some feature section of the SmallEiffel library are labelled with
  81.    :
  82.         feature -- The Guru section :
  83.    If you really need your software to be portable on other Eiffel
  84.    compilers, do not use those features.
  85.    
  86.    Q08: Is it difficult to switch from ISE to SmallEiffel?
  87.    A08: If your original ISE software only uses simple types like
  88.    INTEGER, STRING, ARRAY, BOOLEAN, CHARACTER and DOUBLE, it is usually
  89.    very simple. It is a little bit difficult for simple input/output
  90.    (used with predefined `io') because some features have different
  91.    names. If your original software heavily relies on the EiffelBase
  92.    library, it may be very difficult. For example, one must keep in mind
  93.    that SmallEiffel.ARRAY inherit SmallEiffel.COLLECTION and that ISE
  94.    library also have a class COLLECTION. By the way, subclasses of
  95.    ISE.COLLECTION cannot be used. The ISE.LINKED_LIST can be used in
  96.    conjunction with SmallEiffel.ARRAY because ISE.LINKED_LIST do not
  97.    inherit ISE.COLLECTION (no clash).
  98.    
  99.    Q09: Are there mirror FTP sites for SmallEiffel?
  100.    A09: Australia
  101.    [24]ftp://ftp.progsoc.uts.edu.au/pub/Eiffel/SmallEiffel/
  102.    Austria [25]http://gd.tuwien.ac.at/pub/languages/SmallEiffel/
  103.    USA [26]ftp://ftp.cs.rit.edu/pub/mirrors/SmallEiffel/
  104.    
  105.    Q10: Is it possible to use the Boehm-Demers-Weiser garbage collector
  106.    with SmallEiffel?
  107.    A10: Yes.
  108.    You just have to disable the generation of the GC by SmallEiffel
  109.    (option -no_gc) and replace it by the BDW library. Note that the BDW
  110.    GC can be easily added because SmallEiffel only uses
  111.    malloc/realloc/calloc/free.
  112.    You can download the BDW library from :
  113.    [27]http://reality.sgi.com/boehm_mti/gc_source
  114.           
  115.    How to integrate the Boehm-Demers-Weiser garbage collector with
  116.    SmallEiffel (from a message of Dietmar Wolz) :
  117.     1. Make the gc.a file from the BDW package. Then move this gc.a file
  118.        to /usr/lib/libgc.a.
  119.     2. Move gc.h the to working directory and add the following lines:
  120.        #define malloc(n) GC_malloc(n)
  121.        #define calloc(m,n) GC_malloc((m)*(n))
  122.        #define realloc(p,n) GC_realloc((p),(n))
  123.        #define free(p) GC_free(p)
  124.     3. instead of calling
  125.            "compile -o executable -boost -O root"
  126.        now call
  127.            "compile -o executable -boost -O root -no_gc -lgc -include
  128.        gc.h
  129.        
  130.    
  131.    Q11: Why don't you post more messages in newsgroups and/or mailing
  132.    lists?
  133.    A11: First, because we strongly believe that too much information
  134.    kills information. Scientists call this "cognitive overload". :)
  135.    Second, because we don't have the time. It takes an awful amount of
  136.    time to follow discussions, whichever their quality. We try to do
  137.    that. But it's even more time-consuming to be part of them. So, we
  138.    often have too choose betwen posting/mailing, and working directly on
  139.    SmallEiffel. Since our mailboxes tend to overflood, we generally
  140.    choose the latter :)
  141.    
  142.    Q12: It is possible to create applets with compile_to_jvm?
  143.    A12: Not yet. SmallEiffel was designed to compile Eiffel applications
  144.    to C code or Java bytecode, but not applets.
  145.    
  146.    Q13: Where and how do I send bug reports?
  147.    A13: Before sending any bug report, please:
  148.     1. Compile your application with the -verbose flag, without the
  149.        -no_warning flag, and with all assertions on (default mode, or
  150.        -all_check flag). This may reveal a problem in the code you're
  151.        trying to compile rather than in SmallEiffel...
  152.     2. Check that you've got the [28]latest version of SmallEiffel.
  153.     3. Check that the bug has not been fixed in our [29]latest (beta or
  154.        working) version
  155.     4. Verify that is it not a known problem by [30]looking at our "not
  156.        yet implemented" page
  157.     5. Check whether the problem has not already been reported in [31]the
  158.        SmallEiffel mailing-list
  159.        
  160.    A good and useful bug report -- that is, one that is more likely to be
  161.    fixed -- is one that respects the following simple guideline: BE
  162.    PRECISE . More precisely ;-) :
  163.     1. Which hardware architecture do you use ? What operating system and
  164.        which version of it ? What is your version of SmallEiffel ? Your C
  165.        compiler or JVM, and its version ?
  166.     2. Tell us how to reproduce the problem. Try to isolate it on a small
  167.        program and send us the latter with all instructions necessary in
  168.        order for us to reproduce the problem. Don't forget to tell us the
  169.        compilation command you used.
  170.     3. If for any reason you can't send us the small program mentionned
  171.        above, things may be much more difficult for us. So give us all
  172.        the releavant information you have. The compilation command line
  173.        that creates the problem (once again, preferably, with the
  174.        -verbose flag, without the -no_warning flag, and with all
  175.        assertions on -- default mode, or -all_check flag) and its verbose
  176.        output. The execution stack trace you get in case of a crash.
  177.        Whether the problem occurs with any assertion level or not.
  178.        Whether the GC is concerned (try with and w/o the -no_gc flag).
  179.        
  180.    Bug reports can be sent either to [32]Dominique.Colnet@loria.fr and
  181.    Olivier.Zendra@loria.fr, or to [33]the SmallEiffel mailing-list.
  182.    Don't worry if you don't get an ack: we don't send them because it
  183.    takes time, but we store all the bug reports we receive. And we even
  184.    try to fix them ASAP! :)
  185.    
  186.    Q14: Is there a mechanism to precompile libraries?
  187.    A14: No, there is no such mechanism in SmallEiffel. But if you're
  188.    concerned about speed, don't worry, precomputed libraries are not the
  189.    only way to be fast ! Just try SmallEiffel, and you'll see :)
  190.    
  191.    Q15: How is SmallEiffel compiled?
  192.    A15: With Eiffel optimization options -boost and -no_gc. The garbage
  193.    collector is indeed useless on the SmallEiffel commands: since
  194.    SmallEiffel did not include a GC in its first versions, we were very
  195.    careful about memory when we developped it.
  196.    With C compilation optimizations turned on (it depends on the C
  197.    compiler used; we generally use GCC).
  198.    The resulting executables are stripped.
  199.    
  200.    Q16: How do I keep well informed about SmallEiffel?
  201.    A16: The best way is to keep an eye on our web pages, more especially
  202.    on the [34]What's New? page and the [35]History of Changes.
  203.    People who want detailed information may also decide to stay tuned to
  204.    [36]the SmallEiffel mailing-list.
  205.    
  206.    Q17: What documentation is provided with SmallEiffel?
  207.    Where can I find Eiffel documentation?
  208.    A17: The documentation provided with SmallEiffel is a transcript of
  209.    what you can find on the original SmallEiffel Web site, at
  210.    [37]http://SmallEiffel.loria.fr. It is related only to the use and
  211.    internals of SmallEiffel (yes, we know we still have to improve it ;)
  212.    ).
  213.    For information and documentation about the Eiffel language, check the
  214.    links on our [38]Internet resources page. Note that we are not aware
  215.    of any complete Eiffel language manual freely available on the Web
  216.    (yet?).
  217.    
  218.    Q18: Does SmallEiffel compile the whole Eiffel language ?
  219.    A18: Yes. "Small" in SmallEiffel does not mean that a subset of the
  220.    language is used. See the [39]question about the SmallEiffel name.
  221.    
  222.    Q19: How can I help ?
  223.    A19: The best way to help SmallEiffel and its users is probably to
  224.    pick up some area you're interested in, and develop with SmallEiffel
  225.    your own library, application, tool, extension, etc., releasing it to
  226.    other users.
  227.    To avoid duplicate efforts, we suggest you have a look to [40]what
  228.    other people are already doing around SmallEiffel and help them if
  229.    something that's of interest to you is already under work. There are
  230.    actually very good things in there, some we were not even aware of,
  231.    when they were under development ! :)
  232.    Another very good way to help us is to follow the [41]bug report
  233.    guidelines when you find some problem with SmallEiffel :))
  234.    Finally, you may also consider funding the development of particular
  235.    features you wouls like to have.
  236.    
  237.    Q20: Why don't you change this and add that?! It would be much
  238.    better/cooler/whatever !
  239.    A20: People must understand that we can't always do everything. We
  240.    simply can't. Because we don't have the time. Whether we like it or
  241.    not, we also have other things to do than provide free stuff, modify
  242.    our compiler and/or libraries to please everybody. We do as much as we
  243.    can, but we don't do miracles, sorry.
  244.    Since SmallEiffel is free of charge and open-source, people who do
  245.    need things we don't provide can always implement them and have them
  246.    benefit everybody. A good way to do this is to start working on it,
  247.    and ask other people (i.e. not the SmallEiffel team ;) ) to join and
  248.    help. See the [42]"How can I help ?" question.
  249.    Alternatively, someone or some company who does need us to implement
  250.    something may always consider funding a bit the development of
  251.    SmallEiffel... After all, we've even heard that some people were
  252.    selling sofware and making a bit of money with it... ;)))
  253.    
  254.                                    [Line]
  255.                                       
  256.              Copyright © Dominique COLNET and Suzanne COLLIN -
  257.                            [43]<colnet@loria.fr>
  258.                      Last update: 30 June 1999, by OZ. 
  259.  
  260. References
  261.  
  262.    1. file://localhost/home/colnet/SmallEiffel/man/man/SmallEiffelFAQ.html#Q01
  263.    2. file://localhost/home/colnet/SmallEiffel/man/man/SmallEiffelFAQ.html#Q02
  264.    3. file://localhost/home/colnet/SmallEiffel/man/man/SmallEiffelFAQ.html#Q03
  265.    4. file://localhost/home/colnet/SmallEiffel/man/man/SmallEiffelFAQ.html#Q04
  266.    5. file://localhost/home/colnet/SmallEiffel/man/man/SmallEiffelFAQ.html#Q05
  267.    6. file://localhost/home/colnet/SmallEiffel/man/man/SmallEiffelFAQ.html#Q06
  268.    7. file://localhost/home/colnet/SmallEiffel/man/man/SmallEiffelFAQ.html#Q07
  269.    8. file://localhost/home/colnet/SmallEiffel/man/man/SmallEiffelFAQ.html#Q08
  270.    9. file://localhost/home/colnet/SmallEiffel/man/man/SmallEiffelFAQ.html#Q09
  271.   10. file://localhost/home/colnet/SmallEiffel/man/man/SmallEiffelFAQ.html#Q10
  272.   11. file://localhost/home/colnet/SmallEiffel/man/man/SmallEiffelFAQ.html#Q11
  273.   12. file://localhost/home/colnet/SmallEiffel/man/man/SmallEiffelFAQ.html#Q12
  274.   13. file://localhost/home/colnet/SmallEiffel/man/man/SmallEiffelFAQ.html#Q13
  275.   14. file://localhost/home/colnet/SmallEiffel/man/man/SmallEiffelFAQ.html#Q14
  276.   15. file://localhost/home/colnet/SmallEiffel/man/man/SmallEiffelFAQ.html#Q15
  277.   16. file://localhost/home/colnet/SmallEiffel/man/man/SmallEiffelFAQ.html#Q16
  278.   17. file://localhost/home/colnet/SmallEiffel/man/man/SmallEiffelFAQ.html#Q17
  279.   18. file://localhost/home/colnet/SmallEiffel/man/man/SmallEiffelFAQ.html#Q18
  280.   19. file://localhost/home/colnet/SmallEiffel/man/man/SmallEiffelFAQ.html#Q19
  281.   20. file://localhost/home/colnet/SmallEiffel/man/man/SmallEiffelFAQ.html#Q20
  282.   21. file://localhost/home/colnet/SmallEiffel/man/support/support.html
  283.   22. file://localhost/home/colnet/SmallEiffel/man/man/compile.html
  284.   23. file://localhost/home/colnet/SmallEiffel/man/support/mailing-list.html
  285.   24. ftp://ftp.progsoc.uts.edu.au/pub/Eiffel/SmallEiffel/
  286.   25. http://gd.tuwien.ac.at/pub/languages/SmallEiffel/
  287.   26. ftp://ftp.cs.rit.edu/pub/mirrors/SmallEiffel/
  288.   27. http://reality.sgi.com/boehm_mti/gc_source/
  289.   28. file://localhost/home/colnet/SmallEiffel/man/misc/HISTORY.html
  290.   29. file://localhost/home/colnet/SmallEiffel/man/misc/HISTORY.html
  291.   30. file://localhost/home/colnet/SmallEiffel/man/misc/NOT_YET_IMPLEMENTED.html
  292.   31. file://localhost/home/colnet/SmallEiffel/man/Mailing-list/threads.html
  293.   32. mailto:Dominique.Colnet@loria.fr,Olivier.Zendra@loria.fr
  294.   33. file://localhost/home/colnet/SmallEiffel/man/support/mailing-list.html
  295.   34. file://localhost/home/colnet/SmallEiffel/man/general/whatsnew.html
  296.   35. file://localhost/home/colnet/SmallEiffel/man/misc/HISTORY.html
  297.   36. file://localhost/home/colnet/SmallEiffel/man/support/mailing-list.html
  298.   37. http://SmallEiffel.loria.fr/
  299.   38. file://localhost/home/colnet/SmallEiffel/man/general/resources.html
  300.   39. file://localhost/home/colnet/SmallEiffel/man/man/SmallEiffelFAQ.html#Q01
  301.   40. file://localhost/home/colnet/SmallEiffel/man/general/repository.html
  302.   41. file://localhost/home/colnet/SmallEiffel/man/man/SmallEiffelFAQ.html#Q13
  303.   42. file://localhost/home/colnet/SmallEiffel/man/man/SmallEiffelFAQ.html#Q19
  304.   43. mailto:colnet@loria.fr
  305.